{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Multi-variate Rregression Metamodel with DOE based on random sampling\n",
    "* Input variable space should be constructed using random sampling, not classical factorial DOE\n",
    "* Linear fit is often inadequate but higher-order polynomial fits often leads to overfitting i.e. learns spurious, flawed relationships between input and output\n",
    "* R-square fit can often be misleding measure in case of high-dimensional regression\n",
    "* Metamodel can be constructed by selectively discovering features (or their combination) which matter and shrinking other high-order terms towards zero\n",
    "\n",
    "** [LASSO](https://en.wikipedia.org/wiki/Lasso_(statistics)) is an effective regularization technique for this purpose**\n",
    "\n",
    "#### LASSO: Least Absolute Shrinkage and Selection Operator\n",
    "$$ {\\displaystyle \\min _{\\beta _{0},\\beta }\\left\\{{\\frac {1}{N}}\\sum _{i=1}^{N}(y_{i}-\\beta _{0}-x_{i}^{T}\\beta )^{2}\\right\\}{\\text{ subject to }}\\sum _{j=1}^{p}|\\beta _{j}|\\leq t.} $$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Import libraries"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 403,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Global variables"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 404,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "N_points = 20 # Number of sample points\n",
    "# start with small < 40 points and see how the regularized model makes a difference. \n",
    "# Then increase the number is see the difference\n",
    "noise_mult = 50 # Multiplier for the noise term\n",
    "noise_mean = 10 # Mean for the Gaussian noise adder\n",
    "noise_sd = 10 # Std. Dev. for the Gaussian noise adder"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Generate feature vectors based on random sampling"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 405,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "X=np.array(10*np.random.randn(N_points,5))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 406,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df=pd.DataFrame(X,columns=['Feature'+str(l) for l in range(1,6)])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 407,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Feature1</th>\n",
       "      <th>Feature2</th>\n",
       "      <th>Feature3</th>\n",
       "      <th>Feature4</th>\n",
       "      <th>Feature5</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>-7.225627</td>\n",
       "      <td>-16.338843</td>\n",
       "      <td>-1.004751</td>\n",
       "      <td>-14.918569</td>\n",
       "      <td>7.636380</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2.890603</td>\n",
       "      <td>-8.845838</td>\n",
       "      <td>1.125358</td>\n",
       "      <td>-1.702514</td>\n",
       "      <td>0.520216</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>-4.204175</td>\n",
       "      <td>-6.510710</td>\n",
       "      <td>2.580191</td>\n",
       "      <td>-7.086446</td>\n",
       "      <td>1.287547</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>17.902698</td>\n",
       "      <td>-1.489053</td>\n",
       "      <td>7.723357</td>\n",
       "      <td>-0.782134</td>\n",
       "      <td>2.486191</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>-9.207187</td>\n",
       "      <td>3.090526</td>\n",
       "      <td>-5.448909</td>\n",
       "      <td>-2.728673</td>\n",
       "      <td>11.743763</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    Feature1   Feature2  Feature3   Feature4   Feature5\n",
       "0  -7.225627 -16.338843 -1.004751 -14.918569   7.636380\n",
       "1   2.890603  -8.845838  1.125358  -1.702514   0.520216\n",
       "2  -4.204175  -6.510710  2.580191  -7.086446   1.287547\n",
       "3  17.902698  -1.489053  7.723357  -0.782134   2.486191\n",
       "4  -9.207187   3.090526 -5.448909  -2.728673  11.743763"
      ]
     },
     "execution_count": 407,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Plot the random distributions of input features"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 408,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x197085ee8d0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x19700fba550>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1970895beb8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\nQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x197056d4588>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n2dayAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1970858a6a0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "for i in df.columns:\n",
    "    df.hist(i,bins=5,xlabelsize=15,ylabelsize=15,figsize=(8,6))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Generate the output variable by analytic function + Gaussian noise (our goal will be to *'learn'* this function)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Let's construst the ground  truth  or  originating  function  as  follows: \n",
    " \n",
    "$ y=f(x_1,x_2,x_3,x_4,x_5)= 5x_1^2+13x_2+0.1x_1x_3^2+2x_4x_5+0.1x_5^3+0.8x_1x_4x_5+\\psi(x)\\ :\\ \\psi(x) = {\\displaystyle f(x\\;|\\;\\mu ,\\sigma ^{2})={\\frac {1}{\\sqrt {2\\pi \\sigma ^{2}}}}\\;e^{-{\\frac {(x-\\mu )^{2}}{2\\sigma ^{2}}}}}$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 409,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df['y']=5*df['Feature1']**2+13*df['Feature2']+0.1*df['Feature3']**2*df['Feature1'] \\\n",
    "+2*df['Feature4']*df['Feature5']+0.1*df['Feature5']**3+0.8*df['Feature1']*df['Feature4']*df['Feature5'] \\\n",
    "+noise_mult*np.random.normal(loc=noise_mean,scale=noise_sd)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 410,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Feature1</th>\n",
       "      <th>Feature2</th>\n",
       "      <th>Feature3</th>\n",
       "      <th>Feature4</th>\n",
       "      <th>Feature5</th>\n",
       "      <th>y</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>-7.225627</td>\n",
       "      <td>-16.338843</td>\n",
       "      <td>-1.004751</td>\n",
       "      <td>-14.918569</td>\n",
       "      <td>7.636380</td>\n",
       "      <td>1077.746929</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2.890603</td>\n",
       "      <td>-8.845838</td>\n",
       "      <td>1.125358</td>\n",
       "      <td>-1.702514</td>\n",
       "      <td>0.520216</td>\n",
       "      <td>477.955253</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>-4.204175</td>\n",
       "      <td>-6.510710</td>\n",
       "      <td>2.580191</td>\n",
       "      <td>-7.086446</td>\n",
       "      <td>1.287547</td>\n",
       "      <td>568.202614</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>17.902698</td>\n",
       "      <td>-1.489053</td>\n",
       "      <td>7.723357</td>\n",
       "      <td>-0.782134</td>\n",
       "      <td>2.486191</td>\n",
       "      <td>2214.375549</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>-9.207187</td>\n",
       "      <td>3.090526</td>\n",
       "      <td>-5.448909</td>\n",
       "      <td>-2.728673</td>\n",
       "      <td>11.743763</td>\n",
       "      <td>1325.224195</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    Feature1   Feature2  Feature3   Feature4   Feature5            y\n",
       "0  -7.225627 -16.338843 -1.004751 -14.918569   7.636380  1077.746929\n",
       "1   2.890603  -8.845838  1.125358  -1.702514   0.520216   477.955253\n",
       "2  -4.204175  -6.510710  2.580191  -7.086446   1.287547   568.202614\n",
       "3  17.902698  -1.489053  7.723357  -0.782134   2.486191  2214.375549\n",
       "4  -9.207187   3.090526 -5.448909  -2.728673  11.743763  1325.224195"
      ]
     },
     "execution_count": 410,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Plot single-variable scatterplots\n",
    "** It is clear that no clear pattern can be gussed with these single-variable plots **"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 411,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x19705a99978>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x19705633550>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\nMudwMTOzzP1/4YhfEkQG1jEAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x19708996f28>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x19707c8b320>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\nQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x19708596b38>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZcAAAEKCAYAAADenhiQAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAHl1JREFUeJzt3X+QXWWd5/H3t0MS4fZFIGGamDQE062zgXJH04WxtsdK\nBEnowgRn0RtraghjS5wizuqiC2TZml872cUfpVMMI7MpsQhKmZvRWOnBjvLDtFZXGTCMPyD8sG8L\n5EcHMBHldiORpL/7x3lCTtrbpEnO7XPP6c+r6laf+zzn9P1+uwPfPud5znPM3REREUlSU9oBiIhI\n/qi4iIhI4lRcREQkcSouIiKSOBUXERFJnIqLiIgkTsVFREQSp+IiIiKJU3EREZHEnZZ2AGmZPXu2\nz58/v2bfyMgIhUJhcgNKWB5ygHzkkYccIB955CEHSDePRx555IC7n3ui/aZscZk/fz47d+6s2dfX\n18eSJUsmN6CE5SEHyEceecgB8pFHHnKAdPMws2cnsp8ui4mISOJUXEREJHEqLiIikjgVFxERSdyU\nHdAXEZlqqtUq5XKZgcoA7W3tlEolisViXT5LxUVEZAro7++na0UXo62jjMweobCtwA033kBvTy+d\nnZ2Jf56Ki4hIzlWrVbpWdFG9sgoLorYRRmAQulZ0MbR7iObm5kQ/U2MuIiI5Vy6XGW0dfa2wvGYB\njLaOUi6XE/9MFRcRkZwbqAwwMnukZt/IrBEqg5XEP1PFRUQk59rb2ikcqL1cTOFggbYFbYl/poqL\niEjOlUolmvY0weCYjkFo2tNEqVRK/DM1oC8iknPFYpHent5js8VmjVA4WKBpTxO9Pb2JD+aDiouI\nyJTQ2dnJ0O4hyuUylcEKbQvaKJVKdSksoOIiIjJlNDc3093dPSmfpTEXERFJXGrFxczeZGYPm9nP\nzGyXmf19aD/HzO43s4Hw9ezYMevMrGJmT5nZslj7IjN7NPTdZmaWRk4iIhJJ88zlEPA+d//PwJ8A\ny81sMXAz8KC7twMPhveY2UJgFXARsBz4splNC9/rDuA6oD28lk9mIiIicrzUiotHhsPb6eHlwEpg\nY2jfCFwVtlcCm9z9kLs/DVSAS8xsDnCmu+9wdwfujh0jIiIpSHVAP5x5PAK0Af/i7g+ZWYu77w+7\nPAe0hO25wI7Y4XtD26the2y7iEhmTeYKxvVg0R/7KQdhdhbwbeCvgX53PyvW96K7n21mtwM73P3r\nof1OYBvwDHCru18W2v8UuMndr6zxOWuANQAtLS2LNm3aVDOe4eHhuk3Pmyx5yAHykUcecoB85JGV\nHIaHhxmoDMAMGD1tlKbDTfD76E775ubmVPNYunTpI+7ecaL9GmIqsrv/xsy2E42VPG9mc9x9f7jk\n9ULYbR/QGjtsXmjbF7bHttf6nA3ABoCOjg5fsmRJzXj6+voYry8r8pAD5COPPOQA+cgjCzlUq1Xm\nXjD3uBWMARiE4j8UGdo9xM6dOxs+jzRni50bzlgws9OB9wNPAj3A6rDbamBr2O4BVpnZTDO7kGjg\n/uFwCe0lM1scZoldEztGRCRT0ljBuB7SPHOZA2wM4y5NwGZ3v9fMfgRsNrNu4FngwwDuvsvMNgOP\nA4eBte5+JHyv64G7gNOJLpVtm9RMREQSMpEVjBcsGFt5Gk9qxcXdfw68s0b7QeDScY5ZD6yv0b4T\nuDjpGEVEJlt7WzuFbYXoYV5j1GsF43rQHfoiIg0kjRWM66EhBvRFRCSSxgrG9aDiIiLSYCZ7BeN6\nUHEREWlAk7mCcT1ozEVERBKn4iIiIolTcRERkcSpuIiISOJUXEREJHEqLiIikjgVFxERSZyKi4iI\nJE7FRUREEqfiIiIiiVNxERGRxKm4iIhI4rRwpYhITLVapVwuM1AZoL2tnVKpRLFYTDuszFFxEREJ\n+vv7jz1HZfYIhW0FbrjxBnp7euns7Ew7vExRcRERITpj6VrRRfXKKoRH1I8wAoPQtaKLod1DmXqe\nSto05iIiApTLZUZbR18rLK9ZAKOto5TL5VTiyioVFxERYKAywMjskZp9I7NGqAxWJjmibFNxEREB\n2tvaKRwo1OwrHCzQtqBtkiPKNhUXERGgVCrRtKcJBsd0DELTniZKpVIqcWVVasXFzFrNbLuZPW5m\nu8zsk6H9HDO738wGwtezY8esM7OKmT1lZsti7YvM7NHQd5uZWRo5iUh2FYtFent6Kd5bpLClAD+A\nwpYCxXujdg3mvzFpzhY7DHza3f/DzIrAI2Z2P3At8KC732pmNwM3AzeZ2UJgFXAR8BbgATN7m7sf\nAe4ArgMeAnqB5cC2Sc9IRDKts7OTod1DlMtlKoMV2ha0USqVVFhOQmrFxd33A/vDdtXMngDmAiuB\nJWG3jUAfcFNo3+Tuh4CnzawCXGJmzwBnuvsOADO7G7gKFRcROQnNzc10d3enHUbmNcSYi5nNB95J\ndObREgoPwHNAS9ieC+yJHbY3tM0N22PbRUQkJanfRGlmzcC3gE+5+0vx4RJ3dzPzBD9rDbAGoKWl\nhb6+vpr7DQ8Pj9uXFXnIAfKRRx5ygHzkkYccIBt5pFpczGw6UWG5x923hObnzWyOu+83sznAC6F9\nH9AaO3xeaNsXtse2/wF33wBsAOjo6PAlS5bUjKuvr4/x+rIiDzlAPvLIQw6QjzzykANkI480Z4sZ\ncCfwhLt/MdbVA6wO26uBrbH2VWY208wuBNqBh8MltJfMbHH4ntfEjhERkRSkeebyX4C/AB41s5+G\ntv8J3ApsNrNu4FngwwDuvsvMNgOPE800WxtmigFcD9wFnE40kK/BfBGRFKU5W6wfGO9+lEvHOWY9\nsL5G+07g4uSiExGRU9EQs8VERCRfUp8tJiJyInqAV/aouIhIQ9MDvLJJxUVEGpYe4JVdGnMRkYal\nB3hll4qLiDQsPcAru1RcRKRh6QFe2aXiIiINSw/wyi4N6ItIwzr6AK/XZovNGqFwsEDTniY9wKvB\nqbiISEPTA7yyScVFRBqeHuCVPRpzERGRxKm4iIhI4nRZTETqSuuCTU0qLiJSN1oXbOpScRGRutC6\nYFObxlxEpC60LtjUpuIiInWhdcGmNhUXEakLrQs2tam4iEhdaF2wqU0D+iIyYW9kWrHWBZvaVFxE\nZEKGh4eZe8HcNzStWOuCTV0qLiJyQtVqlYHKwElNK9a6YFNTqmMuZvZVM3vBzB6LtZ1jZveb2UD4\nenasb52ZVczsKTNbFmtfZGaPhr7bzMwmOxeRPCuXyzADTSuWCUt7QP8uYPmYtpuBB929HXgwvMfM\nFgKrgIvCMV82s2nhmDuA64D28Br7PUXkDapWq9x+++0sv2I56//vekZHR+HQH+6nacVSS6qXxdz9\nh2Y2f0zzSmBJ2N4I9AE3hfZN7n4IeNrMKsAlZvYMcKa77wAws7uBq4BtdQ5fJLf6+/u5vOtyfnfo\ndzCf6AXwT0R/4l1wbF9NK5ZaGnHMpcXd94ft54CWsD0X2BHbb29oezVsj20XkZNQrVa54gNX8LvD\nv4MSxy6FzQKuBsrAJ4GZaFqxjMvcPd0AojOXe9394vD+N+5+Vqz/RXc/28xuB3a4+9dD+51EZyfP\nALe6+2Wh/U+Bm9z9yhqftQZYA9DS0rJo06ZNNWMaHh7O/GyWPOQA+cgjazkcOHCA3UO78WkO5xxr\nnzdzHnsP7YWDgEGTNcHvo5sls5Jf1n4X40kzj6VLlz7i7h0n2q8Rz1yeN7M57r7fzOYAL4T2fUBr\nbL95oW1f2B7b/gfcfQOwAaCjo8OXLFlSM4C+vj7G68uKPOQA+cgjazncdPNNfG7T56Izlvcea//C\n277AZ37xGfgBLD60mI999GOUrsnWtOKs/S7Gk4U80h7Qr6UHWB22VwNbY+2rzGymmV1INHD/cLiE\n9pKZLQ6zxK6JHSMib1B7WzszDs+Aodr9M5+fycc++jG6u7szVVhkcqU9FfkbwI+At5vZXjPrBm4F\n3m9mA8Bl4T3uvgvYDDwOfBdY6+5Hwre6HvgKUCFabEKD+SInqVQqMWNkBjxLzaVbpg9N1xiLnFDa\ns8U+Mk7XpePsvx5YX6N9J3BxgqGJ5NaJlnApFots+/dt0Wyx8u+imWHzgFlwxtYz2PadbTpjkRNq\nxDEXEUnY0YKyvW87W7ZuoemtTbw8++Vxl3Dp7OzkhaEX2LhxI9/p/Q4A57ecz/P7nldhkQlRcRHJ\nuaOPGj7yliO8XHkZPsyElnBpbm5m7dq1rF27FogGkVVYZKIacUBfRBJw9A77913+Pqpvr/Ly+S/D\nhWgJF5kUOnMRyaH77ruPlf91Ja++5VWOvOdINPPrJ0SLJ9WgJVwkaSouIjlz3333sezKZdEyLfGz\nlEGiu+uXEd1dH6MlXCRpuiwmkhNHL4N1faBr3MtftALbx7RrCRepA525iGRctVrlH//xH/nSP3+J\n0ZmjHCkcOX7NirjzgX7g18Bc9GRIqRsVF5EM6+/v54oPXMHwrGF4D7CH6ObHCsct3fKavTDj3BnY\nXuPqS65m6Z8v1ZMhpS5UXEQyamhoiPdf8X5e+eArfzi28g3gSeCPj2+ftmcaX/zCF1m9erUKitSV\niotIBvX393PZsss4NPdQ7bGVtwJbwtc5REu5Pg299/Zy+eWXT3K0MhWpuIhkTLVapWtFF4feegj+\naJyd5gIHAIemR5uY/vJ0eu7tUWGRSaPZYiIZUy6XGW0djWaEjbNyMfuBs2D6s9O57e9u48DzB1RY\nZFLpzEUkYwYqA4zMHomWan2QaIxl7JjLL6H5jGa23b/tuDXDRCaLzlxEMqa9rZ3CgUJ0I2QJ+Baw\nCfgB8HWY9m/TuOm/38T+PftVWCQ1Ki4iGVMqlWja0xSdoVxA9Dz7twG/gplDM9n79F5uvfVWzQaT\nVKm4iGRMsVikt6eX4r1FClsKsAMKzxQo7ivywPce4Lzzzks7RBGNuYhkUWdnJ0O7hyiXy1QGK7Qt\naNPNkNJQTlhczOyvga+7+4uTEI+ITFBzczPd3d1phyFS00Qui7UAPzazzWa23Mys3kGJiEi2nbC4\nuPv/AtqBO4FrgQEz+z9mNva+YBEREWCCA/ru7sBz4XUYOBv4ppl9ro6xiYhIRk1kzOWTwDVEi0l8\nBfgf7v6qmTUBA8CN9Q1RRESyZiKzxc4B/szdn403uvuomV1Zn7BERCTLJjLm8rdjC0us74nkQzo5\nYbLBU2ZWMbOb045HRGQqy8VNlGY2DfgX4ApgIfARM1uYblQiIlNXLooLcAlQcfdfuvvviVZaWply\nTCIiU1Zeistcoge8HrU3tIlMiqGhIVavXs273/NuVq9ezdDQeGvhi0wNFs0yzjYzuxpY7u4fC+//\nAni3u39izH5rgDUALS0tizZt2lTz+w0PD2d+GY085ADZyONXv/oVu/fshmlEf66NAkfg/NbzOffc\nczORw0TkIY885ADp5rF06dJH3L3jhDu6e+ZfwHuA78XerwPWvd4xixYt8vFs37593L6syEMO7o2f\nx759+5xpOKfj/DHO+8LX03Gm4fv372/4HCYqD3nkIQf3dPMAdvoE/r+cl8tiPwbazexCM5sBrAJ6\nUo5JpoDPfOYz0RnL1UT/6t4bvl4NTINPf/rTaYYnkppcFBd3Pwx8Avge8ASw2d13pRuVTAU/euhH\nMJ/jnwRJeH8B7Hhox+QHJdIAcrPkvrv3Ar1pxyFTS+GMAvzROJ3z4IwDZ0xqPCKNIhdnLiJpuXb1\ntVDzFmNgN/zltX85meGINAwVF5FT8PGPf5yZz82MHjkcNwgzn5vJmjVrUolLJG25uSwmkoZiscgD\n332AKz5wBa+0vMLhtxzmtKHTeNPzb2Lbd7flYtqryMlQcRE5RZ2dnezfs1+PHBaJUXERSYAeOSxy\nPI25iIhI4nTmIlNatVqlXC4zUBmgva2dUqlEsVhMOyyRzFNxkSmrv7+frhVdjLaOMjJ7hMK2Ajfc\neAO9Pb10dnamHZ5Ipqm4yJRUrVbpWtFF9crqa3fXjzACg9C1oouh3UMakBc5BRpzkSmpXC4z2jpa\nc9mW0dZRyuVyKnGJ5IWKi0xJA5UBRmaP1OwbmTVCZbAyyRGJ5IuKi0xJ7W3tFA4UavYVDhZoW9A2\nyRGJ5IuKi0xJpVKJpj1NNZdtadrTRKlUSiUukbzQgL5MScVikd6e3mOzxWaNUDhYoGlPE709vRrM\nFzlFKi4yZXV2djK0e0jLtojUgYqLTGlatkWkPjTmIiIiiVNxERGRxKm4iIhI4lRcREQkcSouIiKS\nOBUXERFJnIqLiIgkTsVFREQSl0pxMbMPmdkuMxs1s44xfevMrGJmT5nZslj7IjN7NPTdZmYW2mea\nWTm0P2Rm8yc3GxERGSutM5fHgD8DfhhvNLOFwCrgImA58GUzmxa67wCuA9rDa3lo7wZedPc24EvA\nZ+sevYiIvK5Uiou7P+HuT9XoWglscvdD7v40UAEuMbM5wJnuvsPdHbgbuCp2zMaw/U3g0qNnNSIi\nko5GW1tsLrAj9n5vaHs1bI9tP3rMHgB3P2xmvwVmAQfGfnMzWwOsAWhpaaGvr69mEMPDw+P2ZUUe\ncoB85JGHHCAfeeQhB8hGHnUrLmb2AHBeja5b3H1rvT739bj7BmADQEdHhy9ZsqTmfn19fYzXlxV5\nyAHykUcecoB85JGHHCAbedStuLj7ZSdx2D6gNfZ+XmjbF7bHtseP2WtmpwFvBg6exGeLiEhCGm0q\ncg+wKswAu5Bo4P5hd98PvGRmi8N4yjXA1tgxq8P21cD3w7iMiIikJJUxFzP7IPDPwLnAd8zsp+6+\nzN13mdlm4HHgMLDW3Y+Ew64H7gJOB7aFF8CdwNfMrAL8mmi2mYiIpCiV4uLu3wa+PU7femB9jfad\nwMU12l8BPpR0jCIicvIa7bKYiIjkgIqLiIgkTsVFREQSp+IiIiKJU3EREZHEqbiIiEjiVFxERCRx\nKi4iIpI4FRcREUmciouIiCROxUVERBKn4iIiIolTcRERkcSpuIiISOJUXEREJHEqLiIikjgVFxER\nSZyKi4iIJE7FRUREEqfiIiIiiVNxERGRxKm4iIhI4lRcREQkcakUFzP7vJk9aWY/N7Nvm9lZsb51\nZlYxs6fMbFmsfZGZPRr6bjMzC+0zzawc2h8ys/mTn5GIiMSldeZyP3Cxu78D+AWwDsDMFgKrgIuA\n5cCXzWxaOOYO4DqgPbyWh/Zu4EV3bwO+BHx2spIQEZHaUiku7n6fux8Ob3cA88L2SmCTux9y96eB\nCnCJmc0BznT3He7uwN3AVbFjNobtbwKXHj2rERGRdJyWdgDAR4Fy2J5LVGyO2hvaXg3bY9uPHrMH\nwN0Pm9lvgVnAgbEfZGZrgDUALS0t9PX11QxoeHh43L6syEMOkI888pAD5COPPOQA2cijbsXFzB4A\nzqvRdYu7bw373AIcBu6pVxxx7r4B2ADQ0dHhS5YsqblfX18f4/VlRR5ygHzkkYccIB955CEHyEYe\ndSsu7n7Z6/Wb2bXAlcCl4VIXwD6gNbbbvNC2j2OXzuLt8WP2mtlpwJuBg6cav4iInLy0ZostB24E\nVrj7y7GuHmBVmAF2IdHA/cPuvh94ycwWh/GUa4CtsWNWh+2rge/HipWIiKQgrTGX24GZwP1h7H2H\nu/+Vu+8ys83A40SXy9a6+5FwzPXAXcDpwLbwArgT+JqZVYBfE802ExGRFKVSXMK04fH61gPra7Tv\nBC6u0f4K8KFEAxQRkVOiO/RFRCRxKi4iIpI4FRcREUmciouIiCROxUVERBKn4iIiIolTcRERkcSp\nuIiISOJUXEREJHEqLiIikjgVFxERSZyKi4iIJE7FRUREEqfiIiIiiVNxERGRxKm4iIhI4lRcREQk\ncWk95jiTqtUq5XKZgcoA7W3tlEolisVi2mGJiDQcFZcJ6u/vp2tFF6Oto4zMHqGwrcANN95Ab08v\nnZ2daYcnItJQVFwmoFqt0rWii+qVVVgQtY0wAoPQtaKLod1DNDc3pxukiEgD0ZjLBJTLZUZbR18r\nLK9ZAKOto5TL5VTiEhFpVCouEzBQGWBk9kjNvpFZI1QGK5MckYhIY1NxmYD2tnYKBwo1+woHC7Qt\naJvkiEREGlsqxcXM/reZ/dzMfmpm95nZW2J968ysYmZPmdmyWPsiM3s09N1mZhbaZ5pZObQ/ZGbz\nk463VCrRtKcJBsd0DELTniZKpVLSHykikmlpnbl83t3f4e5/AtwL/A2AmS0EVgEXAcuBL5vZtHDM\nHcB1QHt4LQ/t3cCL7t4GfAn4bNLBFotFent6Kd5bpLClAD+AwpYCxXujdg3mi4gcL5XZYu7+Uuxt\nAfCwvRLY5O6HgKfNrAJcYmbPAGe6+w4AM7sbuArYFo75u3D8N4Hbzczc3UlQZ2cnQ7uHKJfLVAYr\ntC1oo1QqqbCIiNSQ2lRkM1sPXAP8FlgamucCO2K77Q1tr4btse1Hj9kD4O6Hzey3wCzgQNIxNzc3\n093dnfS3FRHJnboVFzN7ADivRtct7r7V3W8BbjGzdcAngL+tVyyxmNYAawBaWlro6+urud/w8PC4\nfVmRhxwgH3nkIQfIRx55yAEykoe7p/oCzgceC9vrgHWxvu8B7wHmAE/G2j8C/L/4PmH7NKIzFjvR\n5y5atMjHs3379nH7siIPObjnI4885OCejzzykIN7unkAO30C/29Pa7ZYe+ztSuDJsN0DrAozwC4k\nGrh/2N33Ay+Z2eIwS+waYGvsmNVh+2rg++EHICIiKUlrzOVWM3s7MAo8C/wVgLvvMrPNwOPAYWCt\nux8Jx1wP3AWcTjSQvy203wl8LQz+/5potpmIiKTIpuof+Wb2K6LCVsts6jAhYJLlIQfIRx55yAHy\nkUcecoB087jA3c890U5Ttri8HjPb6e4dacdxKvKQA+QjjzzkAPnIIw85QDby0PIvIiKSOBUXERFJ\nnIpLbRvSDiABecgB8pFHHnKAfOSRhxwgA3lozEVERBKnMxcREUnclCsuWVvuf5wcPm9mT4Y8vm1m\nZ2Uth/DZHzKzXWY2amYdY/oyk8frMbPlIYeKmd2cdjxxZvZVM3vBzB6LtZ1jZveb2UD4enas7w39\nTiYph1Yz225mj4d/S5/MaB5vMrOHzexnIY+/z2Iex5nIbfx5ehGtrnx0+78B/xq2FwI/A2YCFxI9\nvWVa6HsYWAwY0c2bV4T262PHrwLKk5TD5cBpYfuzwGezlkP4vP8EvB3oAzpi7ZnK43XymxZifysw\nI+S0MO24YvG9F3gXYfml0PY54OawffOp/NuapBzmAO8K20XgFyHWrOVhQHPYng48FGLJVB7x15Q7\nc/EJLPfv7k8DR5f7n0NY7t+j39zR5f6PHrMxbH8TuHQy/kpw9/vc/XB4uwOYl7UcQh5PuPtTNboy\nlcfruASouPsv3f33wCaiOBuCu/+QaFWLuPjPcSPH/3zf6O+k7tx9v7v/R9iuAk8QrZSetTzc3YfD\n2+nh5VnLI27KFReIlvs3sz3AnxMeVEZs6f7g6LL+c5ngcv9Ejw+YVb/Ia/oox5bCyWoOY+U9j0bW\n4tFafgDPAS1h+2R+J5MqXAp9J9Ff/ZnLw8ymmdlPgReA+909k3kclcviYmYPmNljNV4rAdz9Fndv\nBe4hWu6/4Zwoh7DPLURrsN2TXqSvbyJ5SGMKf/lmYjqpmTUD3wI+NebqRGbycPcjHj2ddx7RWcjF\nY/ozkcdRqT0srJ7c/bIJ7noP0Ev0LJl9QGusb15o28exy07xdmLH7DWz04A3AwdPPvJjTpSDmV0L\nXAlcGv7RxeMZG2sqOcAb+l3ENVweJ2m8PBrZ82Y2x933h0ssL4T2k/mdTAozm05UWO5x9y2hOXN5\nHOXuvzGz7USPcs9sHrk8c3k9loPl/s1sOXAjsMLdX451ZSaHE8hLHj8G2s3sQjObQTTRoCflmE4k\n/nNczfE/3zf6O6m78Jl3Ak+4+xdjXVnL41wLsz7N7HTg/UT/b8pUHsdJYxZBmi+iv3AeA34O/Dsw\nN9Z3C9Gsi6eIzbAAOsIxg8DtHLv59E3AvxENpj0MvHWScqgQXW/9aXj9a9ZyCJ/9QaJrwoeA54Hv\nZTGPE+TYRTSDaZDoKaypxxSL7RvAfo49RrybaJzqQWAAeAA452R/J5OUQyfRpaKfx/576MpgHu8A\nfhLyeAz4m9CeqTziL92hLyIiiZtyl8VERKT+VFxERCRxKi4iIpI4FRcREUmciouIiCROxUVERBKn\n4iIiIolTcRFpEGb2D2b2qdj79RaeTyKSNbqJUqRBhFV9t7j7u8ysieiu7EvcPe010kTesFwuXCmS\nRe7+jJkdNLN3Ei2t/hMVFskqFReRxvIV4FrgPOCr6YYicvJ0WUykgYTVkx8lehJhu7sfSTkkkZOi\nMxeRBuLuvw/P8viNCotkmYqLSAMJA/mLgQ+lHYvIqdBUZJEGYWYLiZ5H86C7D6Qdj8ip0JiLiIgk\nTmcuIiKSOBUXERFJnIqLiIgkTsVFREQSp+IiIiKJU3EREZHE/X+iSYJHnet9EgAAAABJRU5ErkJg\ngg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x197088ca8d0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "for i in df.columns:\n",
    "    df.plot.scatter(i,'y', edgecolors=(0,0,0),s=50,c='g',grid=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Standard linear regression"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 412,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "from sklearn.linear_model import LinearRegression"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 413,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "linear_model = LinearRegression(normalize=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 414,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "X_linear=df.drop('y',axis=1)\n",
    "y_linear=df['y']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 415,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "LinearRegression(copy_X=True, fit_intercept=True, n_jobs=1, normalize=True)"
      ]
     },
     "execution_count": 415,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "linear_model.fit(X_linear,y_linear)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 416,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "y_pred_linear = linear_model.predict(X_linear)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### R-square of simple linear fit is very bad, coefficients have no meaning i.e. we did not 'learn' the function"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 417,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "RMSE_linear = np.sqrt(np.sum(np.square(y_pred_linear-y_linear)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 418,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Root-mean-square error of linear model: 4591.42864942\n"
     ]
    }
   ],
   "source": [
    "print(\"Root-mean-square error of linear model:\",RMSE_linear)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 419,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Linear model coefficients</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Feature1</th>\n",
       "      <td>47.773549</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2</th>\n",
       "      <td>5.426572</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3</th>\n",
       "      <td>-37.912975</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature4</th>\n",
       "      <td>-20.471474</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature5</th>\n",
       "      <td>61.408373</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "          Linear model coefficients\n",
       "Feature1                  47.773549\n",
       "Feature2                   5.426572\n",
       "Feature3                 -37.912975\n",
       "Feature4                 -20.471474\n",
       "Feature5                  61.408373"
      ]
     },
     "execution_count": 419,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "coeff_linear = pd.DataFrame(linear_model.coef_,index=df.drop('y',axis=1).columns, columns=['Linear model coefficients'])\n",
    "coeff_linear"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 420,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "R2 value of linear model: 0.329123897412\n"
     ]
    }
   ],
   "source": [
    "print (\"R2 value of linear model:\",linear_model.score(X_linear,y_linear))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 421,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x197092eec18>]"
      ]
     },
     "execution_count": 421,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x19705e300f0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(12,8))\n",
    "plt.xlabel(\"Predicted value with linear fit\",fontsize=20)\n",
    "plt.ylabel(\"Actual y-values\",fontsize=20)\n",
    "plt.grid(1)\n",
    "plt.scatter(y_pred_linear,y_linear,edgecolors=(0,0,0),lw=2,s=80)\n",
    "plt.plot(y_pred_linear,y_pred_linear, 'k--', lw=2)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Create polynomial features"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 422,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "from sklearn.preprocessing import PolynomialFeatures"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 423,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "poly1 = PolynomialFeatures(3,include_bias=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 424,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The feature vector list:\n",
      " ['Feature1', 'Feature2', 'Feature3', 'Feature4', 'Feature5', 'Feature1^2', 'Feature1 Feature2', 'Feature1 Feature3', 'Feature1 Feature4', 'Feature1 Feature5', 'Feature2^2', 'Feature2 Feature3', 'Feature2 Feature4', 'Feature2 Feature5', 'Feature3^2', 'Feature3 Feature4', 'Feature3 Feature5', 'Feature4^2', 'Feature4 Feature5', 'Feature5^2', 'Feature1^3', 'Feature1^2 Feature2', 'Feature1^2 Feature3', 'Feature1^2 Feature4', 'Feature1^2 Feature5', 'Feature1 Feature2^2', 'Feature1 Feature2 Feature3', 'Feature1 Feature2 Feature4', 'Feature1 Feature2 Feature5', 'Feature1 Feature3^2', 'Feature1 Feature3 Feature4', 'Feature1 Feature3 Feature5', 'Feature1 Feature4^2', 'Feature1 Feature4 Feature5', 'Feature1 Feature5^2', 'Feature2^3', 'Feature2^2 Feature3', 'Feature2^2 Feature4', 'Feature2^2 Feature5', 'Feature2 Feature3^2', 'Feature2 Feature3 Feature4', 'Feature2 Feature3 Feature5', 'Feature2 Feature4^2', 'Feature2 Feature4 Feature5', 'Feature2 Feature5^2', 'Feature3^3', 'Feature3^2 Feature4', 'Feature3^2 Feature5', 'Feature3 Feature4^2', 'Feature3 Feature4 Feature5', 'Feature3 Feature5^2', 'Feature4^3', 'Feature4^2 Feature5', 'Feature4 Feature5^2', 'Feature5^3']\n",
      "\n",
      "Length of the feature vector: 55\n"
     ]
    }
   ],
   "source": [
    "X_poly = poly1.fit_transform(X)\n",
    "X_poly_feature_name = poly1.get_feature_names(['Feature'+str(l) for l in range(1,6)])\n",
    "print(\"The feature vector list:\\n\",X_poly_feature_name)\n",
    "print(\"\\nLength of the feature vector:\",len(X_poly_feature_name))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 425,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Feature1</th>\n",
       "      <th>Feature2</th>\n",
       "      <th>Feature3</th>\n",
       "      <th>Feature4</th>\n",
       "      <th>Feature5</th>\n",
       "      <th>Feature1^2</th>\n",
       "      <th>Feature1 Feature2</th>\n",
       "      <th>Feature1 Feature3</th>\n",
       "      <th>Feature1 Feature4</th>\n",
       "      <th>Feature1 Feature5</th>\n",
       "      <th>...</th>\n",
       "      <th>Feature3^3</th>\n",
       "      <th>Feature3^2 Feature4</th>\n",
       "      <th>Feature3^2 Feature5</th>\n",
       "      <th>Feature3 Feature4^2</th>\n",
       "      <th>Feature3 Feature4 Feature5</th>\n",
       "      <th>Feature3 Feature5^2</th>\n",
       "      <th>Feature4^3</th>\n",
       "      <th>Feature4^2 Feature5</th>\n",
       "      <th>Feature4 Feature5^2</th>\n",
       "      <th>Feature5^3</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>-7.225627</td>\n",
       "      <td>-16.338843</td>\n",
       "      <td>-1.004751</td>\n",
       "      <td>-14.918569</td>\n",
       "      <td>7.636380</td>\n",
       "      <td>52.209690</td>\n",
       "      <td>118.058389</td>\n",
       "      <td>7.259956</td>\n",
       "      <td>107.796020</td>\n",
       "      <td>-55.177633</td>\n",
       "      <td>...</td>\n",
       "      <td>-1.014321</td>\n",
       "      <td>-15.060659</td>\n",
       "      <td>7.709111</td>\n",
       "      <td>-223.621082</td>\n",
       "      <td>114.465099</td>\n",
       "      <td>-58.591340</td>\n",
       "      <td>-3320.331986</td>\n",
       "      <td>1699.580943</td>\n",
       "      <td>-869.965833</td>\n",
       "      <td>445.310095</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2.890603</td>\n",
       "      <td>-8.845838</td>\n",
       "      <td>1.125358</td>\n",
       "      <td>-1.702514</td>\n",
       "      <td>0.520216</td>\n",
       "      <td>8.355587</td>\n",
       "      <td>-25.569809</td>\n",
       "      <td>3.252962</td>\n",
       "      <td>-4.921294</td>\n",
       "      <td>1.503737</td>\n",
       "      <td>...</td>\n",
       "      <td>1.425186</td>\n",
       "      <td>-2.156115</td>\n",
       "      <td>0.658816</td>\n",
       "      <td>3.261911</td>\n",
       "      <td>-0.996700</td>\n",
       "      <td>0.304549</td>\n",
       "      <td>-4.934832</td>\n",
       "      <td>1.507873</td>\n",
       "      <td>-0.460742</td>\n",
       "      <td>0.140783</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>-4.204175</td>\n",
       "      <td>-6.510710</td>\n",
       "      <td>2.580191</td>\n",
       "      <td>-7.086446</td>\n",
       "      <td>1.287547</td>\n",
       "      <td>17.675091</td>\n",
       "      <td>27.372166</td>\n",
       "      <td>-10.847575</td>\n",
       "      <td>29.792663</td>\n",
       "      <td>-5.413073</td>\n",
       "      <td>...</td>\n",
       "      <td>17.177322</td>\n",
       "      <td>-47.177197</td>\n",
       "      <td>8.571695</td>\n",
       "      <td>129.571299</td>\n",
       "      <td>-23.542003</td>\n",
       "      <td>4.277382</td>\n",
       "      <td>-355.865179</td>\n",
       "      <td>64.657675</td>\n",
       "      <td>-11.747749</td>\n",
       "      <td>2.134466</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>17.902698</td>\n",
       "      <td>-1.489053</td>\n",
       "      <td>7.723357</td>\n",
       "      <td>-0.782134</td>\n",
       "      <td>2.486191</td>\n",
       "      <td>320.506584</td>\n",
       "      <td>-26.658074</td>\n",
       "      <td>138.268928</td>\n",
       "      <td>-14.002300</td>\n",
       "      <td>44.509529</td>\n",
       "      <td>...</td>\n",
       "      <td>460.700154</td>\n",
       "      <td>-46.654456</td>\n",
       "      <td>148.301915</td>\n",
       "      <td>4.724631</td>\n",
       "      <td>-15.018326</td>\n",
       "      <td>47.739203</td>\n",
       "      <td>-0.478457</td>\n",
       "      <td>1.520885</td>\n",
       "      <td>-4.834482</td>\n",
       "      <td>15.367512</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>-9.207187</td>\n",
       "      <td>3.090526</td>\n",
       "      <td>-5.448909</td>\n",
       "      <td>-2.728673</td>\n",
       "      <td>11.743763</td>\n",
       "      <td>84.772288</td>\n",
       "      <td>-28.455054</td>\n",
       "      <td>50.169121</td>\n",
       "      <td>25.123406</td>\n",
       "      <td>-108.127015</td>\n",
       "      <td>...</td>\n",
       "      <td>-161.781416</td>\n",
       "      <td>-81.015972</td>\n",
       "      <td>348.679448</td>\n",
       "      <td>-40.570715</td>\n",
       "      <td>174.609699</td>\n",
       "      <td>-751.491492</td>\n",
       "      <td>-20.316770</td>\n",
       "      <td>87.440046</td>\n",
       "      <td>-376.327608</td>\n",
       "      <td>1619.652276</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 55 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "    Feature1   Feature2  Feature3   Feature4   Feature5  Feature1^2  \\\n",
       "0  -7.225627 -16.338843 -1.004751 -14.918569   7.636380   52.209690   \n",
       "1   2.890603  -8.845838  1.125358  -1.702514   0.520216    8.355587   \n",
       "2  -4.204175  -6.510710  2.580191  -7.086446   1.287547   17.675091   \n",
       "3  17.902698  -1.489053  7.723357  -0.782134   2.486191  320.506584   \n",
       "4  -9.207187   3.090526 -5.448909  -2.728673  11.743763   84.772288   \n",
       "\n",
       "   Feature1 Feature2  Feature1 Feature3  Feature1 Feature4  Feature1 Feature5  \\\n",
       "0         118.058389           7.259956         107.796020         -55.177633   \n",
       "1         -25.569809           3.252962          -4.921294           1.503737   \n",
       "2          27.372166         -10.847575          29.792663          -5.413073   \n",
       "3         -26.658074         138.268928         -14.002300          44.509529   \n",
       "4         -28.455054          50.169121          25.123406        -108.127015   \n",
       "\n",
       "      ...       Feature3^3  Feature3^2 Feature4  Feature3^2 Feature5  \\\n",
       "0     ...        -1.014321           -15.060659             7.709111   \n",
       "1     ...         1.425186            -2.156115             0.658816   \n",
       "2     ...        17.177322           -47.177197             8.571695   \n",
       "3     ...       460.700154           -46.654456           148.301915   \n",
       "4     ...      -161.781416           -81.015972           348.679448   \n",
       "\n",
       "   Feature3 Feature4^2  Feature3 Feature4 Feature5  Feature3 Feature5^2  \\\n",
       "0          -223.621082                  114.465099           -58.591340   \n",
       "1             3.261911                   -0.996700             0.304549   \n",
       "2           129.571299                  -23.542003             4.277382   \n",
       "3             4.724631                  -15.018326            47.739203   \n",
       "4           -40.570715                  174.609699          -751.491492   \n",
       "\n",
       "    Feature4^3  Feature4^2 Feature5  Feature4 Feature5^2   Feature5^3  \n",
       "0 -3320.331986          1699.580943          -869.965833   445.310095  \n",
       "1    -4.934832             1.507873            -0.460742     0.140783  \n",
       "2  -355.865179            64.657675           -11.747749     2.134466  \n",
       "3    -0.478457             1.520885            -4.834482    15.367512  \n",
       "4   -20.316770            87.440046          -376.327608  1619.652276  \n",
       "\n",
       "[5 rows x 55 columns]"
      ]
     },
     "execution_count": 425,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df_poly = pd.DataFrame(X_poly, columns=X_poly_feature_name)\n",
    "df_poly.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 426,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Feature1</th>\n",
       "      <th>Feature2</th>\n",
       "      <th>Feature3</th>\n",
       "      <th>Feature4</th>\n",
       "      <th>Feature5</th>\n",
       "      <th>Feature1^2</th>\n",
       "      <th>Feature1 Feature2</th>\n",
       "      <th>Feature1 Feature3</th>\n",
       "      <th>Feature1 Feature4</th>\n",
       "      <th>Feature1 Feature5</th>\n",
       "      <th>...</th>\n",
       "      <th>Feature3^2 Feature4</th>\n",
       "      <th>Feature3^2 Feature5</th>\n",
       "      <th>Feature3 Feature4^2</th>\n",
       "      <th>Feature3 Feature4 Feature5</th>\n",
       "      <th>Feature3 Feature5^2</th>\n",
       "      <th>Feature4^3</th>\n",
       "      <th>Feature4^2 Feature5</th>\n",
       "      <th>Feature4 Feature5^2</th>\n",
       "      <th>Feature5^3</th>\n",
       "      <th>y</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>-7.225627</td>\n",
       "      <td>-16.338843</td>\n",
       "      <td>-1.004751</td>\n",
       "      <td>-14.918569</td>\n",
       "      <td>7.636380</td>\n",
       "      <td>52.209690</td>\n",
       "      <td>118.058389</td>\n",
       "      <td>7.259956</td>\n",
       "      <td>107.796020</td>\n",
       "      <td>-55.177633</td>\n",
       "      <td>...</td>\n",
       "      <td>-15.060659</td>\n",
       "      <td>7.709111</td>\n",
       "      <td>-223.621082</td>\n",
       "      <td>114.465099</td>\n",
       "      <td>-58.591340</td>\n",
       "      <td>-3320.331986</td>\n",
       "      <td>1699.580943</td>\n",
       "      <td>-869.965833</td>\n",
       "      <td>445.310095</td>\n",
       "      <td>1077.746929</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2.890603</td>\n",
       "      <td>-8.845838</td>\n",
       "      <td>1.125358</td>\n",
       "      <td>-1.702514</td>\n",
       "      <td>0.520216</td>\n",
       "      <td>8.355587</td>\n",
       "      <td>-25.569809</td>\n",
       "      <td>3.252962</td>\n",
       "      <td>-4.921294</td>\n",
       "      <td>1.503737</td>\n",
       "      <td>...</td>\n",
       "      <td>-2.156115</td>\n",
       "      <td>0.658816</td>\n",
       "      <td>3.261911</td>\n",
       "      <td>-0.996700</td>\n",
       "      <td>0.304549</td>\n",
       "      <td>-4.934832</td>\n",
       "      <td>1.507873</td>\n",
       "      <td>-0.460742</td>\n",
       "      <td>0.140783</td>\n",
       "      <td>477.955253</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>-4.204175</td>\n",
       "      <td>-6.510710</td>\n",
       "      <td>2.580191</td>\n",
       "      <td>-7.086446</td>\n",
       "      <td>1.287547</td>\n",
       "      <td>17.675091</td>\n",
       "      <td>27.372166</td>\n",
       "      <td>-10.847575</td>\n",
       "      <td>29.792663</td>\n",
       "      <td>-5.413073</td>\n",
       "      <td>...</td>\n",
       "      <td>-47.177197</td>\n",
       "      <td>8.571695</td>\n",
       "      <td>129.571299</td>\n",
       "      <td>-23.542003</td>\n",
       "      <td>4.277382</td>\n",
       "      <td>-355.865179</td>\n",
       "      <td>64.657675</td>\n",
       "      <td>-11.747749</td>\n",
       "      <td>2.134466</td>\n",
       "      <td>568.202614</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>17.902698</td>\n",
       "      <td>-1.489053</td>\n",
       "      <td>7.723357</td>\n",
       "      <td>-0.782134</td>\n",
       "      <td>2.486191</td>\n",
       "      <td>320.506584</td>\n",
       "      <td>-26.658074</td>\n",
       "      <td>138.268928</td>\n",
       "      <td>-14.002300</td>\n",
       "      <td>44.509529</td>\n",
       "      <td>...</td>\n",
       "      <td>-46.654456</td>\n",
       "      <td>148.301915</td>\n",
       "      <td>4.724631</td>\n",
       "      <td>-15.018326</td>\n",
       "      <td>47.739203</td>\n",
       "      <td>-0.478457</td>\n",
       "      <td>1.520885</td>\n",
       "      <td>-4.834482</td>\n",
       "      <td>15.367512</td>\n",
       "      <td>2214.375549</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>-9.207187</td>\n",
       "      <td>3.090526</td>\n",
       "      <td>-5.448909</td>\n",
       "      <td>-2.728673</td>\n",
       "      <td>11.743763</td>\n",
       "      <td>84.772288</td>\n",
       "      <td>-28.455054</td>\n",
       "      <td>50.169121</td>\n",
       "      <td>25.123406</td>\n",
       "      <td>-108.127015</td>\n",
       "      <td>...</td>\n",
       "      <td>-81.015972</td>\n",
       "      <td>348.679448</td>\n",
       "      <td>-40.570715</td>\n",
       "      <td>174.609699</td>\n",
       "      <td>-751.491492</td>\n",
       "      <td>-20.316770</td>\n",
       "      <td>87.440046</td>\n",
       "      <td>-376.327608</td>\n",
       "      <td>1619.652276</td>\n",
       "      <td>1325.224195</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 56 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "    Feature1   Feature2  Feature3   Feature4   Feature5  Feature1^2  \\\n",
       "0  -7.225627 -16.338843 -1.004751 -14.918569   7.636380   52.209690   \n",
       "1   2.890603  -8.845838  1.125358  -1.702514   0.520216    8.355587   \n",
       "2  -4.204175  -6.510710  2.580191  -7.086446   1.287547   17.675091   \n",
       "3  17.902698  -1.489053  7.723357  -0.782134   2.486191  320.506584   \n",
       "4  -9.207187   3.090526 -5.448909  -2.728673  11.743763   84.772288   \n",
       "\n",
       "   Feature1 Feature2  Feature1 Feature3  Feature1 Feature4  Feature1 Feature5  \\\n",
       "0         118.058389           7.259956         107.796020         -55.177633   \n",
       "1         -25.569809           3.252962          -4.921294           1.503737   \n",
       "2          27.372166         -10.847575          29.792663          -5.413073   \n",
       "3         -26.658074         138.268928         -14.002300          44.509529   \n",
       "4         -28.455054          50.169121          25.123406        -108.127015   \n",
       "\n",
       "      ...       Feature3^2 Feature4  Feature3^2 Feature5  Feature3 Feature4^2  \\\n",
       "0     ...                -15.060659             7.709111          -223.621082   \n",
       "1     ...                 -2.156115             0.658816             3.261911   \n",
       "2     ...                -47.177197             8.571695           129.571299   \n",
       "3     ...                -46.654456           148.301915             4.724631   \n",
       "4     ...                -81.015972           348.679448           -40.570715   \n",
       "\n",
       "   Feature3 Feature4 Feature5  Feature3 Feature5^2   Feature4^3  \\\n",
       "0                  114.465099           -58.591340 -3320.331986   \n",
       "1                   -0.996700             0.304549    -4.934832   \n",
       "2                  -23.542003             4.277382  -355.865179   \n",
       "3                  -15.018326            47.739203    -0.478457   \n",
       "4                  174.609699          -751.491492   -20.316770   \n",
       "\n",
       "   Feature4^2 Feature5  Feature4 Feature5^2   Feature5^3            y  \n",
       "0          1699.580943          -869.965833   445.310095  1077.746929  \n",
       "1             1.507873            -0.460742     0.140783   477.955253  \n",
       "2            64.657675           -11.747749     2.134466   568.202614  \n",
       "3             1.520885            -4.834482    15.367512  2214.375549  \n",
       "4            87.440046          -376.327608  1619.652276  1325.224195  \n",
       "\n",
       "[5 rows x 56 columns]"
      ]
     },
     "execution_count": 426,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df_poly['y']=df['y']\n",
    "df_poly.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 427,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "X_train=df_poly.drop('y',axis=1)\n",
    "y_train=df_poly['y']"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Polynomial model without regularization and cross-validation"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 428,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "poly2 = LinearRegression(normalize=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 429,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Root-mean-square error of simple polynomial model: 1.64850814918e-11\n"
     ]
    }
   ],
   "source": [
    "model_poly=poly2.fit(X_train,y_train)\n",
    "y_poly = poly2.predict(X_train)\n",
    "RMSE_poly=np.sqrt(np.sum(np.square(y_poly-y_train)))\n",
    "print(\"Root-mean-square error of simple polynomial model:\",RMSE_poly)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### The non-regularized polunomial model (notice the coeficients are not learned properly)\n",
    "** Recall that the originating  function  is: ** \n",
    "$ y= 5x_1^2+13x_2+0.1x_1x_3^2+2x_4x_5+0.1x_5^3+0.8x_1x_4x_5+noise $"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 430,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Coefficients polynomial model</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Feature1</th>\n",
       "      <td>-3.527612</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2</th>\n",
       "      <td>15.218753</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3</th>\n",
       "      <td>-6.994873</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature4</th>\n",
       "      <td>-1.082630</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature5</th>\n",
       "      <td>8.141034</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1^2</th>\n",
       "      <td>3.042065</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature2</th>\n",
       "      <td>-0.260235</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature3</th>\n",
       "      <td>0.971001</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature4</th>\n",
       "      <td>-0.235444</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature5</th>\n",
       "      <td>0.801043</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2^2</th>\n",
       "      <td>0.047661</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature3</th>\n",
       "      <td>-0.396370</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature4</th>\n",
       "      <td>-0.038888</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature5</th>\n",
       "      <td>-0.325896</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3^2</th>\n",
       "      <td>1.559077</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3 Feature4</th>\n",
       "      <td>-0.331096</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3 Feature5</th>\n",
       "      <td>1.477965</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature4^2</th>\n",
       "      <td>-0.078852</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature4 Feature5</th>\n",
       "      <td>-0.205158</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature5^2</th>\n",
       "      <td>-0.799875</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1^3</th>\n",
       "      <td>0.083613</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1^2 Feature2</th>\n",
       "      <td>-0.024222</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1^2 Feature3</th>\n",
       "      <td>-0.088235</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1^2 Feature4</th>\n",
       "      <td>-0.081338</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1^2 Feature5</th>\n",
       "      <td>0.052474</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature2^2</th>\n",
       "      <td>-0.005723</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature2 Feature3</th>\n",
       "      <td>0.050523</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature2 Feature4</th>\n",
       "      <td>-0.027209</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature2 Feature5</th>\n",
       "      <td>0.082884</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature3^2</th>\n",
       "      <td>0.174606</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature3 Feature4</th>\n",
       "      <td>-0.052845</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature3 Feature5</th>\n",
       "      <td>0.097653</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature4^2</th>\n",
       "      <td>-0.008324</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature4 Feature5</th>\n",
       "      <td>0.351207</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature5^2</th>\n",
       "      <td>-0.154719</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2^3</th>\n",
       "      <td>-0.001677</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2^2 Feature3</th>\n",
       "      <td>-0.020320</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2^2 Feature4</th>\n",
       "      <td>-0.003512</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2^2 Feature5</th>\n",
       "      <td>0.004814</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature3^2</th>\n",
       "      <td>-0.020326</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature3 Feature4</th>\n",
       "      <td>0.021981</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature3 Feature5</th>\n",
       "      <td>-0.049490</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature4^2</th>\n",
       "      <td>-0.013952</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature4 Feature5</th>\n",
       "      <td>-0.029741</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature5^2</th>\n",
       "      <td>0.131481</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3^3</th>\n",
       "      <td>-0.033181</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3^2 Feature4</th>\n",
       "      <td>0.020609</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3^2 Feature5</th>\n",
       "      <td>-0.144724</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3 Feature4^2</th>\n",
       "      <td>-0.015216</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3 Feature4 Feature5</th>\n",
       "      <td>0.066974</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3 Feature5^2</th>\n",
       "      <td>-0.014963</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature4^3</th>\n",
       "      <td>-0.002478</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature4^2 Feature5</th>\n",
       "      <td>0.020479</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature4 Feature5^2</th>\n",
       "      <td>-0.046732</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature5^3</th>\n",
       "      <td>0.044586</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                            Coefficients polynomial model\n",
       "Feature1                                        -3.527612\n",
       "Feature2                                        15.218753\n",
       "Feature3                                        -6.994873\n",
       "Feature4                                        -1.082630\n",
       "Feature5                                         8.141034\n",
       "Feature1^2                                       3.042065\n",
       "Feature1 Feature2                               -0.260235\n",
       "Feature1 Feature3                                0.971001\n",
       "Feature1 Feature4                               -0.235444\n",
       "Feature1 Feature5                                0.801043\n",
       "Feature2^2                                       0.047661\n",
       "Feature2 Feature3                               -0.396370\n",
       "Feature2 Feature4                               -0.038888\n",
       "Feature2 Feature5                               -0.325896\n",
       "Feature3^2                                       1.559077\n",
       "Feature3 Feature4                               -0.331096\n",
       "Feature3 Feature5                                1.477965\n",
       "Feature4^2                                      -0.078852\n",
       "Feature4 Feature5                               -0.205158\n",
       "Feature5^2                                      -0.799875\n",
       "Feature1^3                                       0.083613\n",
       "Feature1^2 Feature2                             -0.024222\n",
       "Feature1^2 Feature3                             -0.088235\n",
       "Feature1^2 Feature4                             -0.081338\n",
       "Feature1^2 Feature5                              0.052474\n",
       "Feature1 Feature2^2                             -0.005723\n",
       "Feature1 Feature2 Feature3                       0.050523\n",
       "Feature1 Feature2 Feature4                      -0.027209\n",
       "Feature1 Feature2 Feature5                       0.082884\n",
       "Feature1 Feature3^2                              0.174606\n",
       "Feature1 Feature3 Feature4                      -0.052845\n",
       "Feature1 Feature3 Feature5                       0.097653\n",
       "Feature1 Feature4^2                             -0.008324\n",
       "Feature1 Feature4 Feature5                       0.351207\n",
       "Feature1 Feature5^2                             -0.154719\n",
       "Feature2^3                                      -0.001677\n",
       "Feature2^2 Feature3                             -0.020320\n",
       "Feature2^2 Feature4                             -0.003512\n",
       "Feature2^2 Feature5                              0.004814\n",
       "Feature2 Feature3^2                             -0.020326\n",
       "Feature2 Feature3 Feature4                       0.021981\n",
       "Feature2 Feature3 Feature5                      -0.049490\n",
       "Feature2 Feature4^2                             -0.013952\n",
       "Feature2 Feature4 Feature5                      -0.029741\n",
       "Feature2 Feature5^2                              0.131481\n",
       "Feature3^3                                      -0.033181\n",
       "Feature3^2 Feature4                              0.020609\n",
       "Feature3^2 Feature5                             -0.144724\n",
       "Feature3 Feature4^2                             -0.015216\n",
       "Feature3 Feature4 Feature5                       0.066974\n",
       "Feature3 Feature5^2                             -0.014963\n",
       "Feature4^3                                      -0.002478\n",
       "Feature4^2 Feature5                              0.020479\n",
       "Feature4 Feature5^2                             -0.046732\n",
       "Feature5^3                                       0.044586"
      ]
     },
     "execution_count": 430,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "coeff_poly = pd.DataFrame(model_poly.coef_,index=df_poly.drop('y',axis=1).columns, \n",
    "                          columns=['Coefficients polynomial model'])\n",
    "coeff_poly"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### R-square value of the simple polynomial model is perfect but the model is flawed as shown above i.e. it learned wrong coefficients and overfitted the to the data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 431,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "R2 value of simple polynomial model: 1.0\n"
     ]
    }
   ],
   "source": [
    "print (\"R2 value of simple polynomial model:\",model_poly.score(X_train,y_train))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Polynomial model with cross-validation and LASSO regularization\n",
    "** This is an advanced machine learning method which prevents over-fitting by penalizing high-valued coefficients i.e. keep them bounded **"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 432,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "from sklearn.linear_model import LassoCV"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 433,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "model1 = LassoCV(cv=10,verbose=0,normalize=True,eps=0.001,n_alphas=100, tol=0.0001,max_iter=5000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 434,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "LassoCV(alphas=None, copy_X=True, cv=10, eps=0.001, fit_intercept=True,\n",
       "    max_iter=5000, n_alphas=100, n_jobs=1, normalize=True, positive=False,\n",
       "    precompute='auto', random_state=None, selection='cyclic', tol=0.0001,\n",
       "    verbose=0)"
      ]
     },
     "execution_count": 434,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model1.fit(X_train,y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 435,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "y_pred1 = np.array(model1.predict(X_train))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 436,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Root-mean-square error of Metamodel: 14.6011217949\n"
     ]
    }
   ],
   "source": [
    "RMSE_1=np.sqrt(np.sum(np.square(y_pred1-y_train)))\n",
    "print(\"Root-mean-square error of Metamodel:\",RMSE_1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 437,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Coefficients Metamodel</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Feature1</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2</th>\n",
       "      <td>12.773765</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature4</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature5</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1^2</th>\n",
       "      <td>4.967681</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature2</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature3</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature4</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature5</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2^2</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature3</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature4</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature5</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3^2</th>\n",
       "      <td>0.000116</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3 Feature4</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3 Feature5</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature4^2</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature4 Feature5</th>\n",
       "      <td>1.931189</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature5^2</th>\n",
       "      <td>-0.019570</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1^3</th>\n",
       "      <td>0.000897</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1^2 Feature2</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1^2 Feature3</th>\n",
       "      <td>-0.000761</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1^2 Feature4</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1^2 Feature5</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature2^2</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature2 Feature3</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature2 Feature4</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature2 Feature5</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature3^2</th>\n",
       "      <td>0.103872</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature3 Feature4</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature3 Feature5</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature4^2</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature4 Feature5</th>\n",
       "      <td>0.792031</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature5^2</th>\n",
       "      <td>-0.007740</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2^3</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2^2 Feature3</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2^2 Feature4</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2^2 Feature5</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature3^2</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature3 Feature4</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature3 Feature5</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature4^2</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature4 Feature5</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature5^2</th>\n",
       "      <td>0.001378</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3^3</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3^2 Feature4</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3^2 Feature5</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3 Feature4^2</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3 Feature4 Feature5</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3 Feature5^2</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature4^3</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature4^2 Feature5</th>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature4 Feature5^2</th>\n",
       "      <td>-0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature5^3</th>\n",
       "      <td>0.097635</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                            Coefficients Metamodel\n",
       "Feature1                                  0.000000\n",
       "Feature2                                 12.773765\n",
       "Feature3                                 -0.000000\n",
       "Feature4                                  0.000000\n",
       "Feature5                                  0.000000\n",
       "Feature1^2                                4.967681\n",
       "Feature1 Feature2                        -0.000000\n",
       "Feature1 Feature3                        -0.000000\n",
       "Feature1 Feature4                        -0.000000\n",
       "Feature1 Feature5                         0.000000\n",
       "Feature2^2                                0.000000\n",
       "Feature2 Feature3                         0.000000\n",
       "Feature2 Feature4                        -0.000000\n",
       "Feature2 Feature5                         0.000000\n",
       "Feature3^2                                0.000116\n",
       "Feature3 Feature4                        -0.000000\n",
       "Feature3 Feature5                         0.000000\n",
       "Feature4^2                               -0.000000\n",
       "Feature4 Feature5                         1.931189\n",
       "Feature5^2                               -0.019570\n",
       "Feature1^3                                0.000897\n",
       "Feature1^2 Feature2                      -0.000000\n",
       "Feature1^2 Feature3                      -0.000761\n",
       "Feature1^2 Feature4                       0.000000\n",
       "Feature1^2 Feature5                       0.000000\n",
       "Feature1 Feature2^2                       0.000000\n",
       "Feature1 Feature2 Feature3                0.000000\n",
       "Feature1 Feature2 Feature4               -0.000000\n",
       "Feature1 Feature2 Feature5               -0.000000\n",
       "Feature1 Feature3^2                       0.103872\n",
       "Feature1 Feature3 Feature4               -0.000000\n",
       "Feature1 Feature3 Feature5                0.000000\n",
       "Feature1 Feature4^2                       0.000000\n",
       "Feature1 Feature4 Feature5                0.792031\n",
       "Feature1 Feature5^2                      -0.007740\n",
       "Feature2^3                                0.000000\n",
       "Feature2^2 Feature3                       0.000000\n",
       "Feature2^2 Feature4                       0.000000\n",
       "Feature2^2 Feature5                       0.000000\n",
       "Feature2 Feature3^2                      -0.000000\n",
       "Feature2 Feature3 Feature4                0.000000\n",
       "Feature2 Feature3 Feature5               -0.000000\n",
       "Feature2 Feature4^2                      -0.000000\n",
       "Feature2 Feature4 Feature5               -0.000000\n",
       "Feature2 Feature5^2                       0.001378\n",
       "Feature3^3                               -0.000000\n",
       "Feature3^2 Feature4                       0.000000\n",
       "Feature3^2 Feature5                       0.000000\n",
       "Feature3 Feature4^2                      -0.000000\n",
       "Feature3 Feature4 Feature5               -0.000000\n",
       "Feature3 Feature5^2                      -0.000000\n",
       "Feature4^3                                0.000000\n",
       "Feature4^2 Feature5                       0.000000\n",
       "Feature4 Feature5^2                      -0.000000\n",
       "Feature5^3                                0.097635"
      ]
     },
     "execution_count": 437,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "coeff1 = pd.DataFrame(model1.coef_,index=df_poly.drop('y',axis=1).columns, columns=['Coefficients Metamodel'])\n",
    "coeff1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 438,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.99999321548058273"
      ]
     },
     "execution_count": 438,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model1.score(X_train,y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 439,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.21965889699484506"
      ]
     },
     "execution_count": 439,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model1.alpha_"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Printing only the non-zero coefficients of the regularized model (notice the coeficients are learned well enough)\n",
    "** Recall that the originating  function  is: ** \n",
    "$ y= 5x_1^2+13x_2+0.1x_1x_3^2+2x_4x_5+0.1x_5^3+0.8x_1x_4x_5+noise $"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 440,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Coefficients Metamodel</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Feature2</th>\n",
       "      <td>12.773765</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1^2</th>\n",
       "      <td>4.967681</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature3^2</th>\n",
       "      <td>0.000116</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature4 Feature5</th>\n",
       "      <td>1.931189</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature5^2</th>\n",
       "      <td>-0.019570</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1^3</th>\n",
       "      <td>0.000897</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1^2 Feature3</th>\n",
       "      <td>-0.000761</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature3^2</th>\n",
       "      <td>0.103872</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature4 Feature5</th>\n",
       "      <td>0.792031</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature1 Feature5^2</th>\n",
       "      <td>-0.007740</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature2 Feature5^2</th>\n",
       "      <td>0.001378</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Feature5^3</th>\n",
       "      <td>0.097635</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                            Coefficients Metamodel\n",
       "Feature2                                 12.773765\n",
       "Feature1^2                                4.967681\n",
       "Feature3^2                                0.000116\n",
       "Feature4 Feature5                         1.931189\n",
       "Feature5^2                               -0.019570\n",
       "Feature1^3                                0.000897\n",
       "Feature1^2 Feature3                      -0.000761\n",
       "Feature1 Feature3^2                       0.103872\n",
       "Feature1 Feature4 Feature5                0.792031\n",
       "Feature1 Feature5^2                      -0.007740\n",
       "Feature2 Feature5^2                       0.001378\n",
       "Feature5^3                                0.097635"
      ]
     },
     "execution_count": 440,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "coeff1[coeff1['Coefficients Metamodel']!=0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 441,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x19709384320>]"
      ]
     },
     "execution_count": 441,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\naBEAY8eO/f/bu/M4KYr7/+Ovj7qoHIIghxhxEYmCIEYXxQNEkIjGSL4GDfr9eQSFKPIwqAmKxDsa\nlCgERb6iEDUREcUE/X5RUcgaQTmUQxE1oBIOD0TAlagcu/X7o2qW3mFmmVmW7dnd9/Px6MfMVFdP\nV3d193ymprqGRx99lKOPPjrmkomIiEiC+ryL1HLOOf7617/Srl270sC9R48ezJ49W4G7iIhIjlHL\nu0gtNmfOHE499dTS17169eLhhx+mdevWMZZKRERE0lHLu0gtVFJSQs+ePcsE7hMnTuTll19W4C4i\nIpLD1PIuUst8+OGHXHHFFcyePbs0bdGiRRx77LExlkpEREQyoZZ3kVriu+++4/jjj6dTp07Mnj2b\n5s2bc+edd+KcU+AuIiJSTajlXaQWWLRoEeeddx4rV64E4Je//CX33XcfBx54YLwFExERkayo5V2k\nBtu0aRPXXnstnTt3Lg3chw0bxsSJExW4i4iIVENqeRepof7whz9w0003AWBmDBkyhDvvvJP69evH\nXDIRERGpKAXvIjVMUVERRx55JJ9//nlpWmFhId26dYuxVCIiIlIZ1G1GpAaZPn06HTp0KBO4FxUV\nKXAXERGpIRS8i9QAa9euxcz4yU9+wurVqykoKOCtt97COUeDBg3iLp6IiIhUEgXvItWYc47JkyeX\nGepx5MiRvPnmmxx//PExlkxERET2BPV5F6mm5s+fT//+/XnvvfcAaNu2LWPGjKF3794xl0xERET2\nFAXvItVMcXExJ554Im+//TYA9evX5/777+fyyy9nr730Y5qIiEhNpuBdpBpZsWIFRx11FMXFxaVp\n8+fPp127djGWSkRERKqKmulEqoHt27fzxz/+kY4dO5YG7ueddx4lJSUK3EVERGoRtbyL5LglS5aU\nuSH14osvZtSoUTRp0iTGUomIiEgc1PIukqO2bNnCzTffTEFBQWna9OnTeeKJJxS4i4iI1FIK3kVy\n0P33389+++3H73//e7Zv386VV17J2rVrOeuss+IumoiIiMRI3WZEcsgXX3xBixYtSl/Xr1+f6dOn\n07Vr1xhLJSIiIrlCLe8iOWLGjBkceuihZdJWr16twF1ERERKKXgXidnHH3/MJZdcwplnnsm2bdsA\nmDBhAs45GjVqFHPpREREJJeo24xIjKZOnUrfvn0B2Hfffbn99tu57rrryMvLi7lkIiIikosUvIvE\n4LPPPmPw4ME899xzpWlLlizhyCOPjLFUIiIikuvUbUakCpWUlNC1a1datmzJc889R/369Rk7dizF\nxXsoDZ4AACAASURBVMUK3EVERGSX1PIuUkUWLlzI8ccfX/q6UaNGLFmyhFatWsVYKhEREalO1PIu\nsocVFxczevRoTjnllNK03r17s2HDBgXuIiIikhUF7yJ70DPPPEN+fj7XXnst33//PSeeeCLvvvsu\nL774ImYWd/FERESkmlHwLrIHbN26lTvuuIMLLriANWvW0LJlS6ZNm8bcuXPp0KFD3MUTERGRakp9\n3kUq2T//+U+uvvpqli5dWpq2ePFimjZtGmOpREREpCZQ8C5SSdavX18mQG/Tpg2PPvoo3bt3j69Q\nIiIiUqOo24xIJXjppZfKBO5HHXUU77zzjgJ3ERERqVQK3kV2w6ZNmxg4cCBnnXVWadpDDz3E+++/\nT926dWMsmYiIiNRE6jYjUkGDBg1i3LhxAOTl5TF06FCGDRtGvXr1Yi6ZiIiI1FQK3kWytG7dOq65\n5hqefvppANq1a8ezzz5L+/btYy6ZiIiI1HQK3kUy5Jxj6NChTJw4kQ0bNlC3bl1OPvlkpk+fTl5e\nXtzFExERkVpAwbtIBmbPnk3Xrl1LX/fq1Yvx48eTn58fX6FERESk1tENqyLlKCkp4cEHHywTuP/8\n5z/n5ZdfVuAuIiIiVU4t7yJpfPDBBwwYMIDZs2eXpi1atIhjjz02xlKJiIhIbaaWd5Ek27Zt47jj\njqNdu3bMnj2b5s2bM3XqVJxzCtxFREQkVgreRSIWLlzICSecwKJFiwDo2rUr77//Puedd17MJRMR\nERFRtxkRADZu3Eh+fj7ffPMNzjny8/O54447uPjii+MumoiIiEgptbxLrXf33XfTuHFjioqKcM4x\nZMgQli5dqsBdREREco5a3qXWKioq4sYbbyz9l1SAUaNGMWTIkBhLJSIiIpKegneplaZMmcL111/P\nmjVrANh7773ZuHEjDRo0iLlkIiIiIukpeJdaZf369bRp04aioiIACgoKmDhxIh07doy5ZCIiIiK7\npj7vUis455g8eTLt2rUrDdzPP/983nzzTQXuIiIiUm2o5V1qvHnz5tGlS5fS16effjrjx4/niCOO\niLFUIiIiItnL2ZZ3MxtpZh+Y2Ttm9jczaxSZN8zMVpjZh2Z2ZiT9eDN7N8wbY2YW0vc1s6dD+jwz\ny6/6LZKqVlJSwimnnFImcH/kkUeYOXOmAncRERGplnI2eAdeATo4544B/gUMAzCz9kA/4GigN/CQ\nme0dlhkHDADahql3SL8c2OicOwIYBdxTVRsh8VixYgXXX389b7zxRmna/PnzueKKKwjf6URERESq\nnZwN3p1zM5xz28PLucAPwvM+wGTn3Bbn3CfACuAEMzsYOMA5N9c554AngJ9Flnk8PH8W6GmK4Gqk\nLVu20K9fPzp27MjixYtp2rQpV1xxBSUlJXTu3Dnu4omIiIjslurS570/8HR4fgg+mE9YE9K2hefJ\n6YllVgM457ab2ddAE2B98orMbCAwEKB58+YUFhZmXMjNmzdnlV8q14oVK7jyyispLi4GoEePHlxz\nzTU0bNiQ1157LebS1W46N3KH6iJ3qC5yh+oit6g+yhdr8G5mrwItUswa7pybFvIMB7YDT1ZFmZxz\n44HxAAUFBa579+4ZL1tYWEg2+aVy/Oc//2HEiBGMGDGiNHC/9dZb6d69u+ojR+jcyB2qi9yhusgd\nqovcovooX6zBu3PujPLmm9llwDlAz9AVBmAtcGgk2w9C2lp2dK2JpkeXWWNm+wANga92t/wSv/vu\nu4/f/OY3pa8HDx7M3XffTYMGDfStXURERGqcnO02Y2a9gaHAac65byOzngcmmdn9QEv8janznXPF\nZlZkZl2AecAlwAORZS4F3gT6ArMiXwakGtq8eTMHHHAA0Wp8/fXXOfXUU2MslYiIiMielbPBO/Ag\nsC/wSri3dK5z7krn3HtmNgVYhu9Oc7VzrjgsMwh4DNgfeDFMABOAv5jZCmADfrQaqaZmzJjBwIED\nywTuGzdupFGjRuUsJSIiIlL95WzwHoZ1TDfvLuCuFOlvAR1SpH8PnF+pBZQq98knn3D44YeXvv7R\nj37EvffeyxlnlNv7SkRERKTGyNmhIkWipk6dytFHH136esSIEcyfP1+Bu4iIiNQqOdvyLgKwcOFC\nhg8fzksvvQSAmfH8889zzjnnxFwyERERkaqn4F1yUklJCd26dWPOnDkANGjQgHvuuYdf/epX7LWX\nfjASERGR2knBu+Scjz/+mDZt2pRJe/fddznssMNiKpGIiIhIblATpuSM4uJiRo0aRceOHUvTzj77\nbEpKShS4i4iIiKCWd8kRc+fO5aSTTip9feGFFzJ69GiaNWsWY6lEREREcota3iVWW7du5Y477qBb\nt26lac8//zyTJk1S4C4iIiKSRMG7xGbs2LHsv//+3HrrrWzbto3zzjuPVatW8dOf/jTuoomIiIjk\nJHWbkSr35ZdflmlVb926NRMnTqR79+7xFUpERESkGlDwLlVq1qxZ9OzZs0zawoULadSoUUwlEhER\nEak+1G1GqsS6desYMGBAmcB93LhxOOcUuIuIiIhkSC3vssdNnTqVvn37AlCnTh1uvvlmhg4dSp06\ndWIumYiIiEj1ouBd9pgvvviCa665hilTppSmLVq0iPbt28dYKhEREZHqS91mpNI55/jxj39MixYt\nmDJlCvXq1WP06NFs3bpVgbuIiIjIblDLu1SqN998k5NPPrn0dadOnfj73/9Ofn5+fIUSERERqSHU\n8i6VoqSkhLFjx5YJ3Hv06MGiRYsUuIuIiIhUEgXvstteeOEFTj75ZAYPHgxAkyZNWLx4MTNnzsTM\nYi6diIiISM2h4F0qbNu2bdx1112ce+65zJs3jxYtWvDcc8+xfv16OnXqFHfxRERERGoc9XmXCnn7\n7be5/PLLWbJkSWnasmXLOPDAA2MslYiIiEjNppZ3ycrGjRsxMwoKCliyZAmtW7fmlVdewTmnwF1E\nRERkD1PwLhl76qmnaNy4cenrXr168e6773LGGWfEWCoRERGR2kPBu+xSUVERgwYN4qKLLipNGz16\nNDNmzKBevXoxlkxERESkdlGfdynX1VdfzUMPPQRAXl4e/fv3Z+TIkTRo0CDmkomIiIjUPgreJaUv\nv/ySIUOGMGnSJAA6d+7MhAkT6NixY8wlExEREam9FLxLGc45Ro8ezd1338369esBOOKII5gzZw55\neXkxl05ERESkdlPwLqXmzp3LSSedVPq6R48ejB8/njZt2sRYKhERERFJ0A2rQklJCX/84x/LBO79\n+/fn1VdfVeAuIiIikkPU8l7LLV++nAEDBvDaa6+Vpi1YsICCgoIYSyUiIiIiqSh4r6W2b99O+/bt\nWb58OQDNmjXjT3/6E7/4xS8ws5hLJyIiIiKpqNtMLbRkyRK6dOlSGrj37duXZcuW0a9fPwXuIiIi\nIjlMLe+1yNdff02vXr1YtGgR27dvp1WrVlx11VXceOONcRdNRERERDKglvdaYuTIkTRq1IgFCxaw\nfft2Bg8ezNKlSxW4i4iIiFQjanmv4TZv3szQoUMZN25cadqoUaMYMmRIjKUSERERkYpQ8F6Dvfji\ni1x11VX8+9//Lk3btGkTDRs2jLFUIiIiIlJRCt5roA0bNtCkSZPS18cddxwTJkzg2GOPjbFUIiIi\nIrK71Oe9BnHO8eyzz9KuXbvStCFDhjBv3jwF7iIiIiI1gFrea4i33367zB8rdevWjTFjxtCpU6cY\nSyUiIiIilUnBezXnnOPUU0/ljTfeKE0bN24cAwcOZK+99MOKiIiISE2i4L0a+/jjjxkwYECZwH3O\nnDmcfPLJMZZKRERERPYUNc1WQ1u3buW3v/0tHTp0YNasWQCcc845lJSUKHAXERERqcHU8l7NLF26\nlI4dO5a+vuiiixg9ejRNmzaNsVQiIiIiUhXU8l5NbN26ldtvv53jjjuuNG3kyJE8+eSTCtxFRERE\nagm1vOeQVatWMXbsWCZPnsz69es56KCD6NevH3Xr1uW2224rzXfllVcyYsQI/dmSiIiISC2j4D1H\nzJo1iz59+rB58+bStFWrVnHvvfeWyVdYWMhpp51W1cUTERERkRyg4D0HrFq1qjRw379NZw7ocgEl\n33/DhpcfpHjzhtJ8S5Ys4ZhjjomxpCIiIiISJwXvOWDs2LGlgXuTc4fy2cTBFH/9BQB5TQ8D24tt\n6z5h0qRJCt5FREREajHdsJoDJk+eDMABXS7guw9eLw3cG3W9mIMv/RONe10FwFNPPRVbGUVEREQk\nfmp5zwHr168HoE6zfPIat+SAky5g35ZHUfeIE3x60/wy+URERESkdlLLew446KCDANi6biV7123I\ngd0uKQ3cAbZ+ubJMPhERERGpnRS854B+/foBUDR3Cs6VlJnnXAlFc58B4MILL6zysomIiIhI7lDw\nngOuvvpq6tevz3cfLeDLqXfy/ZpllGz5lu/XLOPLqXfy3UcLqF+/PoMGDYq7qCIiIiISI/V5zwGt\nWrVi2rRpfrjIjxbw3UcLysyvX78+06ZNo1WrVjGVUERERERygVrec0SPHj147733uOGGG2jVqhV1\n69alVatW3HDDDbz33nv06NEj7iKKiIiISMzU8p5DWrVqxYgRIxgxYkTcRRERERGRHKSWdxERERGR\naiJng3czu9PM3jGzxWY2w8xaRuYNM7MVZvahmZ0ZST/ezN4N88aYmYX0fc3s6ZA+z8zyq36LRERE\nRER2T84G78BI59wxzrljgf8FbgEws/ZAP+BooDfwkJntHZYZBwwA2oapd0i/HNjonDsCGAXcU2Vb\nISIiIiJSSXI2eHfOFUVe1gNceN4HmOyc2+Kc+wRYAZxgZgcDBzjn5jrnHPAE8LPIMo+H588CPROt\n8iIiIiIi1UVO37BqZncBlwBfA6eH5EOAuZFsa0LatvA8OT2xzGoA59x2M/saaAKsT7HOgcBAgObN\nm1NYWJhxeTdv3pxVftmzVB+5Q3WRO1QXuUN1kTtUF7lF9VG+WIN3M3sVaJFi1nDn3DTn3HBguJkN\nAwYDt+7pMjnnxgPjAQoKClz37t0zXrawsJBs8suepfrIHaqL3KG6yB2qi9yhusgtqo/yxRq8O+fO\nyDDrk8B0fPC+Fjg0Mu8HIW1teJ6cTmSZNWa2D9AQ+KriJRcRERERqXo52+fdzNpGXvYBPgjPnwf6\nhRFkWuNvTJ3vnPsMKDKzLqE/+yXAtMgyl4bnfYFZoV+8iIiIiEi1kct93keY2ZFACfBv4EoA59x7\nZjYFWAZsB652zhWHZQYBjwH7Ay+GCWAC8BczWwFswI9WIyIiIiJSreRs8O6c+3k58+4C7kqR/hbQ\nIUX698D5lVpAEREREZEqlrPdZkREREREpCwF7yIiIiIi1YSCdxERERGRasI06Ep6ZvYl/mbZTB1E\nij9+ktioPnKH6iJ3qC5yh+oid6guckttrY/DnHNNd5VJwXslMrO3nHMFcZdDPNVH7lBd5A7VRe5Q\nXeQO1UVuUX2UT91mRERERESqCQXvIiIiIiLVhIL3yjU+7gJIGaqP3KG6yB2qi9yhusgdqovcovoo\nh/q8i4iIiIhUE2p5FxERERGpJhS8i4iIiIhUEwreM2Rmd5rZO2a22MxmmFnLyLxhZrbCzD40szMj\n6ceb2bth3hgzs5C+r5k9HdLnmVl+1W9R9WZmI83sg1AnfzOzRpF5qo8qZGbnm9l7ZlZiZgVJ81QX\nOcLMeod6WGFmN8ZdnprKzCaa2TozWxpJa2xmr5jZ8vB4YGReVueIZMbMDjWzf5jZsnB9+nVIV13E\nwMz2M7P5ZrYk1MftIV31URHOOU0ZTMABkefXAP8TnrcHlgD7Aq2Bj4C9w7z5QBfAgBeBs0L6oMjy\n/YCn496+6jYBPwb2Cc/vAe5RfcRWF+2AI4FCoCCSrrrIkQnYO+z/w4E6oV7ax12umjgB3YDjgKWR\ntHuBG8PzG3fneqUp43o4GDguPG8A/Cvsb9VFPPVhQP3wPA+YF/ap6qMCk1reM+ScK4q8rAck7vTt\nA0x2zm1xzn0CrABOMLOD8QH/XOePtieAn0WWeTw8fxboWSu/Oe4G59wM59z28HIu8IPwXPVRxZxz\n7zvnPkwxS3WRO04AVjjnPnbObQUm4/e1VDLn3D+BDUnJ0eP6ccoe79meI5IB59xnzrmF4fk3wPvA\nIaguYuG8zeFlXpgcqo8KUfCeBTO7y8xWA/8N3BKSDwFWR7KtCWmHhOfJ6WWWCQHo10CTPVfyGq8/\n/ts3qD5yieoid6SrC6kazZ1zn4XnnwPNw/OKnCOSpdD97kf41l7VRUzMbG8zWwysA15xzqk+KkjB\ne4SZvWpmS1NMfQCcc8Odc4cCTwKD4y1tzber+gh5hgPb8XUie0gmdSEiuxZaCzVGcxUxs/rAVGBI\n0i/oqosq5pwrds4di/+l/AQz65A0X/WRoX3iLkAucc6dkWHWJ4HpwK3AWuDQyLwfhLS17OjKEU0n\nsswaM9sHaAh8VfGS10y7qg8zuww4B+gZTnpQfewRWZwbUaqL3JGuLqRqfGFmBzvnPgs/+68L6RU5\nRyRDZpaHD9yfdM49F5JVFzFzzm0ys38AvVF9VIha3jNkZm0jL/sAH4TnzwP9wigZrYG2wPzwM1CR\nmXUJfXYvAaZFlrk0PO8LzIoEn5IBM+sNDAXOdc59G5ml+sgdqovcsQBoa2atzawO/mbg52MuU20S\nPa4vpezxnu05IhkI+20C8L5z7v7ILNVFDMysqYVR4cxsf6AXPo5SfVRE3HfMVpcJ/+19KfAO8AJw\nSGTecPyd0B8SuesZKAjLfAQ8yI5/tN0PeAZ/A8Z84PC4t6+6TWHfrQYWh+l/VB+x1cV/4fsdbgG+\nAF5WXeTeBJyNH3HjI2B43OWpqRPwFPAZsC2cF5fj79uYCSwHXgUaR/JndY5oyrgeTsV3wXgn8jlx\ntuoitvo4BlgU6mMpcEtIV31UYEp8YIqIiIiISI5TtxkRERERkWpCwbuIiIiISDWh4F1EREREpJpQ\n8C4iIiIiUk0oeBcRERERqSYUvIvEwMzyzcyZ2WNJ6Y+F9PxYCpalXCuvmd0WytM97rJUlnTHSgbL\nFZqZhhNLwcxWmtnKKlhPrp0fzswK4y6H7FAZdVLRa4RUXwrepcYKF7PoVGxm681slpldFHf59gRd\nxGuPqgwMI1+KotP3ZrbCzMbnSnAqlStS1yVm1qacfP+I5L1sN9d5WWW8j0hNtk/cBRCpAreHxzzg\nKPw/5J5uZgXOueviK1ZKw4AR1MK/e5a01gLtgK/jLgjwGlAYnjcBegADgL5mdqJzbnlcBctRNeF8\n3o6PFS4HbkqeGf59vHskn4jsYTrRpMZzzt0WfW1mPYFXgCFmNsY5tzKOcqXi/F8/fxZ3OSR3OOe2\n4f9GPBcURs8nM9sL/4/TZ+MDu1/GVK6cVEPO5y/w2/BLM7vFObc9af4V4fEF/L8ti8gepm4zUus4\n52bigyEDOkPZ7iZm9kMze9rM1oWfi7snljWzxmb2BzN738y+M7OvzWymmf041brMrIGZ3W9ma0I3\ngw/M7DrSnHvldYUwsxNCudaa2RYz+8zMZpjZBWH+bcAnIfulSV0cLkt6rzPNbHroRrTFzD4ys5Fm\n1ihNuc4ws9fN7D9mtsHM/m5mR5Wzm1O9xwdmttXMDkoz/4ZQ1sGRtNNDt4xlZlYU9vlSM7vVzPbL\ncL3ldiUqr294tvspxfK/CusekJT+y5D+rZntmzRvXjhW9k9X/lDeS8PLTyL1vDJFGfYxs5vMbHnY\nhtVmdo+Z1clkG8rjnCsBEuXqnCpPBc6ZhmY2OvmcMbPDU9XjLuov4y4YYb2/Nd+tbk04Vr80s+fN\n7KQ0y7iw/hZm9mg4N4sT60t1Ppvvb5/cBSk6JW9fXTMbZmaLw/m32czeNLML05SpjpndHI7VLWb2\niZn9Pvk4y9IjQAvgnKR15QGXAW8Ay9ItnOkxYL7v95/Dyz8n7Zf8kKelmd1iZnPM7PNQT5+a2SQz\na59i3dFrexsze9bMvjKzb8xfPzuEfE3NX2s+C8fdAjM7Pc32NAzb82HIu9HMXjazM9Lkz7pOwnk7\nyMzmmr/2fWtmi8xssPkvzVKLqeVdaisLj8kf+m2AecC/gCeB/YEiADM7DN9lIB94HXgJqIf/QHvJ\nzH7lnHukdAX+wjwTH9QsCe/XCLgZOC2rwvrgbxxQDDwPLAeaAQXAIGBKKFsj4NdhfX+PvMXiyHvd\nCtwGbAD+F1gHHAP8BjjbzE5yzhVF8vcFnga2hsfPgFOBN4F3stiMx4G7gQuBB1LMvzSsY1Ik7QZ8\nV6c3gP8D9gNOCeXvbmZnOOeKsyhDxrLdT2nMDI898QEQkdfgj6+TCF1RzKwhcDzwunPuu3Le93bg\nZ0An4E/AppC+KUXeSUBX4EX8sXw2MBR//FRmS/m25IQKnDP7AbOA44BF+HOmITA8bMOe1A64C/gn\n/ljbCLQCzgXOMrOfOudeSrFcY2AusBl4DijBt1anMxp/nib7KX67v00kmP+SOAv4EbAQmIj/4n8m\nMMnMjnbO/S6S3/DXgj7AR8CDQB2gP9Cx/M0v11PA/fhW9uh15Vz8cXQDcESqBbM8Bh7DH8N9gGlE\nrlvsOLa7ATcC/wCm4vd7W6AvcK6ZneKcW5KiKPn4a/v7YT35+F8KCsOXs5fw58fT+DrtB7xoZj90\nzq2KbE8jYA7QHliAr8+DgAuAGWZ2lXPu4Uj+rOskfCl6AV/PH+LP4e+B0/HXzhOBi1MtK7WEc06T\npho54QNzlyL9DPwHbAlwWEjLT+QH7k7zfoVhmX5J6Y3wHzLfAc0j6TeF95sK7BVJb40PCB3wWNJ7\nPRbS8yNp7fGB0Qbg6BTl+kHkeX6q943MPz3MfwNolDTvsjBvVCStPvBVWH9BUv5RkX2Wn2p9yeXE\nf/l4K8W8zol9lZR+OGAp8t8Z8v8iKf22kN49i31SmHycZLufdrHd/8YH/hZJ+xQf2BcDd0bS+4T3\nvnlX5U91rKTaLuBtoHEkvR6wIqy7RYbbkNivtyWl740PehzwQCWcMzeH93oqaX8dCnyZZj/sVH8p\n6uqypPSVwMqktIbAQWmO20+B91PMSxz/TwD7pJhfbh1F8vXCn2PLo2WILD80Kf9+Yb+XAMdG0i8K\n+d8E9oukN8YHjg7f9WmXdR7ZvjXh+aP4fu3R681L+Hsx6gK/T7Ovsz0GUtZZZH4zoEGK9E74QP7F\npPT8SD0NT5qXON42AP9D2ev0xaQ4z4GHQ/rDScdo27AvtlD2+p11nbDjfHsA2DvpfJsQ5vVJsY0p\nr3Gaat4UewE0adpTU+SCfVuY7gKeDR9ADrg/kjdx8fsc2DfFe3UK859Js65E0DUokrYcHyC1SZE/\ncXF+LCn9MXYO3h8IaddmsM3lXsSBv4X5O30JCPMXAesir/875H88Rd6G+NawjIL3sMyMVOvHt0Y5\n4NwM36dxyD8xzX7tnsU+KWTn4D2r/bSLsv45vNcx4XX78PoqfMvdG5G8Y8K8k3dV/lTHSqrtAs5I\nMe/2MO+cDLchsV8L2XE+jcG3YjrgPaBZJZwziS8VO20TvvV9jwXvu9j+RL20Skp3+GCtWZrlyq2j\nkKcDPuhbD7SNpDfBX6sWpFkusX/vjaS9EtJOL2dfFGax3dHg/cTw+pbw+rBQVw+F1zsF7xU8BlLW\nWYblfR7fQp2X4vz5hEggHOa1CvP+Q9IXAnygvA34RyStTsj7DZEvxJH5iUaFWypaJ/hfVr7C/8KZ\n6gthI/yXoSkptvGx5PyaauakbjNSG9waHh0+2HwdmOCc+2uKvEucc1tSpCf6vDY037c8WdPw2A58\nX3f8z8irnXMfpchfGCnXrnQJjy9mmL88J+E/kM43s/NTzK8DNDWzJs65r/A/44MfZaQM59zXZraY\n7LoAPYZvZbwU33UD832vL8S3Tk+PZjazevhuQP8F/BBowI4uTwCHZLHubGS7n8ozC/8h3RPfzahH\nSJ+J/9C9zswaOOe+CfM2A/N3ewt2eCtF2urweGCW73UaO9f3YvyXpeTRcLI9Zw7Ad1tb7VLfRD47\ny7JmzcxOwR9vJ+FbeJPvCzgEWJWUttI5t66C6zsY30VnX+AnruxoPZ3xAaRLs//ywmO7SNpx+MAu\n1b4qrEgZE5xz88zsXaC/mf0e34VmL8p2B0uW1TGQKTP7CXAlvtvgQezcBfggdr5ReLHbuYvdp+Hx\nX+H8K+WcKzazL/C/vCQcif+VYY5zbkOKos0Cfofv5pSQbZ38EN84sRz4ne91s5PvyHKfSc2i4F1q\nPOdcyqtfGp+nSW8SHnuFKZ364bFheEzX9zXdelJJ9I+tjOHmmuDP+119cUh0l6nM7QDfol0E/D8z\nGxY+TM/Bf1iNdpGRLEK/z1nACcBSfF/UL9nRt/pWfNCzJ2S7n8oT7fc+Kjyucc79y8xm4r/EnGZm\nbwFHA9PdziN6VJhzLlU/+MT7753l293unLst3DB3CL7//zXAFDM7y/kbWBOyPWcOCI/pjrXy+pHv\nNjP7L/wvc9/jW0s/wreyluCHQjyN1MdbtudAYn318PdSHAr8t3MuObhL7L/OpLkZOKgfed4Q2OD8\nCEWVUs4kj+B/hTgLf7/E2865ReXkz/YY2CUz+zW+n/lGfD2twt8n4NhxH0iqetppqFXn3PYQHKcb\nhnU7O74kwY7rYboRhBLp0Xsasq2TxD5rS/nXn4z3mdQ8Ct5FynJp0hMX918758Zk8D6J/M3TzG+R\nRZkSwdch7P6QgV/j+3U2ziI/VM524Jz7zsym4FvteuH7zF4aZj+elL0PPnB/zDlX5sbK0GKZ6S8X\niYAy3fUu1c2D2e6ntJxzn5rZh0C3cBNzd/zNeOBb47bi78NIBK+zdnede1oI0lcDvzazlvibBQfj\nA7uEbM+ZxM2/6Y61dOkl4EfnSPGlJ6NRgYI78XVR4Jx7PzrDzB4m/S9M6a4ZaZnZ3sBkfKvsq6aR\nXgAABs5JREFUcOfcUymyJfbfKJf5/1F8DTQ2s7wUwWJW52oafwHuwfcPPwS4I4PyQObHQLnMbB98\nl63PgeOcH4ozOj/lqECVKLE96fblwUn5Es+zqZPEsn9zzp1XsWJKTafhhkQyMzc8ZjTiRfgJdgVw\niKX+Z8LuFVj3WRnkTfwsnK5FdS5woJkdneG6F4bHnQKXMDLKsRm+T9Rj4fFSM2uK3653nHOLk/Il\nRq94LsV7ZNNVZ2N4PDR5Ruiq8cMUy2S7n3ZlJr7Lz1X4gHImgHPu27CunpTtTpOJXdV1Vbke3+/7\nlrA/E7I9Z4qAj/HnTH6KLKemWTRt/eK7VWTqCGBZisB9r3LWXVGj8b84TXTO3Z0mz3z8F5NsRtlZ\niP9cT1Xe7tkUMJXwK86z+K4k/8HfWFyerI6BoLzj+iD8+fNGisC9Pju6+e0pH+Jb+TtZ6uFiE0NL\nLoykZVsnH+AbbLqEXx9FdqLgXSQDzrm38H3lzzOz/qnymFlHM2sWSfoz/hy7Jzour5m1xnc1yNQ4\n/M+3N6cZxzjaJ3Mj4ca6NO81Kjw+ElpMk9+rnpl1iSRNC+95kZklB0K3seNn5Iw55+bg+3P2wfdb\nzWNHQB+1Mjx2Tyrj4fjWv0zX9w3+A/GU6P4LrZ/344drTJbtftqVRGv6sPA4M2leB/ywe1/hh/nM\nRKK7Trq6rhLOD6P3CP7n/usj6RU5Z57AnzN/sEhnXzM7FBiSpgiJ+wOSx9Lvib+XIlMrgbbR+g5l\nuA1/k3GlMLMh+F8pXsUf/ymFfvRPAgVhjPCdglnz45a3jiT9OTzeZZH/QTCzxvi+2JXhd/h7UM5M\n7ieerILHQHnH9Tp88Hx8CNYT75GHHzI15X9IVBbn3FZ8nTTA/1JTKjTSXIPv1veXyKys6iT8evQA\nvhV/jIX/e0ha18GpPguk9lC3GZHMXYQPtCaY2TX4MYM34VuhjsEHYCfhP2AA7sP3wfw5sNDMXsa3\nGl2AH0v63ExW6pxbZmaD8D9VLzKzafjgtwm+L2wRocXHObfZzOYBXc3sSfx49cXA8865d5xzM83s\nRuAPwHIzm44fhaE+fvSI0/BdOXpH3m8gvr/562YWHee9Q9iOblntRe8J/IffzfgvJk+myPMC/teL\n68ysI36El1b4Fsv/I7ugdSR+iLU5ZvYMO8ZMzsMHy52imbPdTxn4B74VtRnwgXPu08i8mfgAsSnw\nrHMu024YM4Hf4r9gTMWPgLHJOfdghstXpruBy4FrzewB59z6kJ7tOXMv/pzpBxxpZjPwXxAT58zP\n2NENKuHP+P0wzMw64f8s6If4X3T+hj//MjGKHefYVHwQdgo+cH8BPw77bjGzFvjrgsPfxzE8xQ2J\ni51zibHUB+P7Pt8BXGxms/F9/1vib1jsjP+C8knI/xTwC/y1ZWm4VuThuzUtwN8QvFvCl7Xkm3bL\nk+0x8CY+QB9iZk3Y0S/8gXCT/Bj8OO/vhu2rgz+XG+PPs5R/rFSJbsT/kjDYzDqHdSbGeW8ADHbO\nfRLJX5E6uRN/TboS+KmZzcLf89QMfzycgh99Ke0fY0kNF/dwN5o07akJUo/zniZvPhkMtYW/ON+E\nHzt7M/6u/0/wweRAoF5S/gPwrbtr8QHjB/jWycNTrY9yhpbDf8BNxX/IbcWPlPAS0Dcp3xH4YOMr\nfKCTaqi8U/F/HPJpeK8v8aOG3E/SeO4hfy98sPotviV+Gv7Pk9KWdxf7sRX+S4UDXign36H4wH5t\n2Nfv4W/w3Ifyx0funuK9Lg/Lb8EHBA/jvwAVpjtOst1Pu9jmt0PZxial54VjyQFXZXNsAtfhh2vc\nEvKsjMwrb7suS3VclFP2xH69rZw8iaD0vt08Zxrh+85/GrYrcc6cEN5/dIp1H40fqeibsI5C/Bes\nlNtJmqEiQ/7F+C4h6/HBf8d0x1WqY7C885myY46nm5KvCXXwQfwb7BhHfBX+y9sQoEmK/LfguyBt\nCdt6F/4mznLLm6L8jjBUZAZ5U47zXsFjoDc+iE+cF9F9uA/+uF8W3udzfEv3Ycn7e1fnz67qsJzj\npBH+17/lYR9vwt88++M075N1neBH1bo41PMG/PVnLf46fBNwaKbbqKnmTRYqXkREJGeZ/5fh8cCV\nLvIPliIitY2CdxERyRlm1tKV7VaEmbXCtzgejP9X5E9TLiwiUguoz7uIiOSSqeEGxLfx3RHy8fc5\n1AWGKXAXkdpOLe8iIpIzws3ZF+NvzGuI7/e8CHjQOZdq2FARkVpFwbuIiIiISDWhcd5FRERERKoJ\nBe8iIiIiItWEgncRERERkWpCwbuIiIiISDWh4F1EREREpJr4/2y4ZR7wANXoAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1970928de80>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(12,8))\n",
    "plt.xlabel(\"Predicted value with Regularized Metamodel\",fontsize=20)\n",
    "plt.ylabel(\"Actual y-values\",fontsize=20)\n",
    "plt.grid(1)\n",
    "plt.scatter(y_pred1,y_train,edgecolors=(0,0,0),lw=2,s=80)\n",
    "plt.plot(y_pred1,y_pred1, 'k--', lw=2)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
